home *** CD-ROM | disk | FTP | other *** search
Wrap
Text File | 1998-08-17 | 50.6 KB | 1,287 lines | [ TEXT/MPS ]
; ; File: Script.a ; ; Contains: Script Manager interfaces ; ; Version: Technology: System 7.5+ ; Release: Universal Interfaces 3.2 ; ; Copyright: © 1986-1998 by Apple Computer, Inc., all rights reserved ; ; Bugs?: For bug reports, consult the following page on ; the World Wide Web: ; ; http://developer.apple.com/bugreporter/ ; ; IF &TYPE('__SCRIPT__') = 'UNDEFINED' THEN __SCRIPT__ SET 1 IF &TYPE('__MACTYPES__') = 'UNDEFINED' THEN include 'MacTypes.a' ENDIF IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN include 'Quickdraw.a' ENDIF IF &TYPE('__INTLRESOURCES__') = 'UNDEFINED' THEN include 'IntlResources.a' ENDIF IF &TYPE('__EVENTS__') = 'UNDEFINED' THEN include 'Events.a' ENDIF ; Meta script codes: smSystemScript EQU -1 ; designates system script. smCurrentScript EQU -2 ; designates current font script. smAllScripts EQU -3 ; designates any script ; Script codes: ; These specify a Mac OS encoding that is related to a FOND ID range. ; Some of the encodings have several variants (e.g. for different localized systems) ; which all share the same script code. ; Not all of these script codes are currently supported by Apple software. ; Notes: ; - Script code 0 (smRoman) is also used (instead of smGreek) for the Greek encoding ; in the Greek localized system. ; - Script code 28 (smEthiopic) is also used for the Inuit encoding in the Inuktitut ; system. smRoman EQU 0 smJapanese EQU 1 smTradChinese EQU 2 ; Traditional Chinese smKorean EQU 3 smArabic EQU 4 smHebrew EQU 5 smGreek EQU 6 smCyrillic EQU 7 smRSymbol EQU 8 ; Right-left symbol smDevanagari EQU 9 smGurmukhi EQU 10 smGujarati EQU 11 smOriya EQU 12 smBengali EQU 13 smTamil EQU 14 smTelugu EQU 15 smKannada EQU 16 ; Kannada/Kanarese smMalayalam EQU 17 smSinhalese EQU 18 smBurmese EQU 19 smKhmer EQU 20 ; Khmer/Cambodian smThai EQU 21 smLao EQU 22 smGeorgian EQU 23 smArmenian EQU 24 smSimpChinese EQU 25 ; Simplified Chinese smTibetan EQU 26 smMongolian EQU 27 smEthiopic EQU 28 smGeez EQU 28 ; Synonym for smEthiopic smCentralEuroRoman EQU 29 ; For Czech, Slovak, Polish, Hungarian, Baltic langs smVietnamese EQU 30 smExtArabic EQU 31 ; extended Arabic smUninterp EQU 32 ; uninterpreted symbols, e.g. palette symbols ; Obsolete script code names (kept for backward compatibility): smChinese EQU 2 ; (Use smTradChinese or smSimpChinese) smRussian EQU 7 ; Use smCyrillic ; smMaldivian = 25: deleted, no code for Maldivian smLaotian EQU 22 ; Use smLao smAmharic EQU 28 ; Use smEthiopic or smGeez smSlavic EQU 29 ; Use smCentralEuroRoman smEastEurRoman EQU 29 ; Use smCentralEuroRoman smSindhi EQU 31 ; Use smExtArabic smKlingon EQU 32 ; Language codes: ; These specify a language implemented using a particular Mac OS encoding. ; Not all of these language codes are currently supported by Apple software. langEnglish EQU 0 ; smRoman script langFrench EQU 1 ; smRoman script langGerman EQU 2 ; smRoman script langItalian EQU 3 ; smRoman script langDutch EQU 4 ; smRoman script langSwedish EQU 5 ; smRoman script langSpanish EQU 6 ; smRoman script langDanish EQU 7 ; smRoman script langPortuguese EQU 8 ; smRoman script langNorwegian EQU 9 ; smRoman script langHebrew EQU 10 ; smHebrew script langJapanese EQU 11 ; smJapanese script langArabic EQU 12 ; smArabic script langFinnish EQU 13 ; smRoman script langGreek EQU 14 ; Greek script using smRoman script code langIcelandic EQU 15 ; modified smRoman/Icelandic script langMaltese EQU 16 ; Roman script langTurkish EQU 17 ; modified smRoman/Turkish script langCroatian EQU 18 ; modified smRoman/Croatian script langTradChinese EQU 19 ; Chinese (Mandarin) in traditional characters langUrdu EQU 20 ; smArabic script langHindi EQU 21 ; smDevanagari script langThai EQU 22 ; smThai script langKorean EQU 23 ; smKorean script langLithuanian EQU 24 ; smCentralEuroRoman script langPolish EQU 25 ; smCentralEuroRoman script langHungarian EQU 26 ; smCentralEuroRoman script langEstonian EQU 27 ; smCentralEuroRoman script langLatvian EQU 28 ; smCentralEuroRoman script langSami EQU 29 ; language of the Sami people of N. Scandinavia langFaroese EQU 30 ; modified smRoman/Icelandic script langFarsi EQU 31 ; modified smArabic/Farsi script langPersian EQU 31 ; Synonym for langFarsi langRussian EQU 32 ; smCyrillic script langSimpChinese EQU 33 ; Chinese (Mandarin) in simplified characters langFlemish EQU 34 ; smRoman script langIrishGaelic EQU 35 ; smRoman or modified smRoman/Celtic script (without dot above) langAlbanian EQU 36 ; smRoman script langRomanian EQU 37 ; modified smRoman/Romanian script langCzech EQU 38 ; smCentralEuroRoman script langSlovak EQU 39 ; smCentralEuroRoman script langSlovenian EQU 40 ; modified smRoman/Croatian script langYiddish EQU 41 ; smHebrew script langSerbian EQU 42 ; smCyrillic script langMacedonian EQU 43 ; smCyrillic script langBulgarian EQU 44 ; smCyrillic script langUkrainian EQU 45 ; modified smCyrillic/Ukrainian script langByelorussian EQU 46 ; smCyrillic script langBelorussian EQU 46 ; Synonym for langByelorussian langUzbek EQU 47 ; Cyrillic script langKazakh EQU 48 ; Cyrillic script langAzerbaijani EQU 49 ; Azerbaijani in Cyrillic script langAzerbaijanAr EQU 50 ; Azerbaijani in Arabic script langArmenian EQU 51 ; smArmenian script langGeorgian EQU 52 ; smGeorgian script langMoldavian EQU 53 ; smCyrillic script langKirghiz EQU 54 ; Cyrillic script langTajiki EQU 55 ; Cyrillic script langTurkmen EQU 56 ; Cyrillic script langMongolian EQU 57 ; Mongolian in smMongolian script langMongolianCyr EQU 58 ; Mongolian in Cyrillic script langPashto EQU 59 ; Arabic script langKurdish EQU 60 ; smArabic script langKashmiri EQU 61 ; Arabic script langSindhi EQU 62 ; Arabic script langTibetan EQU 63 ; smTibetan script langNepali EQU 64 ; smDevanagari script langSanskrit EQU 65 ; smDevanagari script langMarathi EQU 66 ; smDevanagari script langBengali EQU 67 ; smBengali script langAssamese EQU 68 ; smBengali script langGujarati EQU 69 ; smGujarati script langPunjabi EQU 70 ; smGurmukhi script langOriya EQU 71 ; smOriya script langMalayalam EQU 72 ; smMalayalam script langKannada EQU 73 ; smKannada script langTamil EQU 74 ; smTamil script langTelugu EQU 75 ; smTelugu script langSinhalese EQU 76 ; smSinhalese script langBurmese EQU 77 ; smBurmese script langKhmer EQU 78 ; smKhmer script langLao EQU 79 ; smLao script langVietnamese EQU 80 ; smVietnamese script langIndonesian EQU 81 ; smRoman script langTagalog EQU 82 ; Roman script langMalayRoman EQU 83 ; Malay in smRoman script langMalayArabic EQU 84 ; Malay in Arabic script langAmharic EQU 85 ; smEthiopic script langTigrinya EQU 86 ; smEthiopic script langOromo EQU 87 ; smEthiopic script langSomali EQU 88 ; smRoman script langSwahili EQU 89 ; smRoman script langKinyarwanda EQU 90 ; smRoman script langRuanda EQU 90 ; synonym for langKinyarwanda langRundi EQU 91 ; smRoman script langNyanja EQU 92 ; smRoman script langChewa EQU 92 ; synonym for langNyanja langMalagasy EQU 93 ; smRoman script langEsperanto EQU 94 ; Roman script langWelsh EQU 128 ; modified smRoman/Celtic script langBasque EQU 129 ; smRoman script langCatalan EQU 130 ; smRoman script langLatin EQU 131 ; smRoman script langQuechua EQU 132 ; smRoman script langGuarani EQU 133 ; smRoman script langAymara EQU 134 ; smRoman script langTatar EQU 135 ; Cyrillic script langUighur EQU 136 ; Arabic script langDzongkha EQU 137 ; (lang of Bhutan) smTibetan script langJavaneseRom EQU 138 ; Javanese in smRoman script langSundaneseRom EQU 139 ; Sundanese in smRoman script langGalician EQU 140 ; smRoman script langAfrikaans EQU 141 ; smRoman script langBreton EQU 142 ; smRoman or modified smRoman/Celtic script langInuktitut EQU 143 ; Inuit script using smEthiopic script code langScottishGaelic EQU 144 ; smRoman or modified smRoman/Celtic script langManxGaelic EQU 145 ; smRoman or modified smRoman/Celtic script langIrishGaelicScript EQU 146 ; modified smRoman/Gaelic script (using dot above) langTongan EQU 147 ; smRoman script langGreekPoly EQU 148 ; smGreek script langGreenlandic EQU 149 ; smRoman script langUnspecified EQU 32767 ; Special code for use in resources (such as 'itlm') ; Obsolete language code names (kept for backward compatibility): ; Misspelled, ambiguous, misleading, considered pejorative, archaic, etc. langPortugese EQU 8 ; Use langPortuguese langMalta EQU 16 ; Use langMaltese langYugoslavian EQU 18 ; (use langCroatian, langSerbian, etc.) langChinese EQU 19 ; (use langTradChinese or langSimpChinese) langLettish EQU 28 ; Use langLatvian langLapponian EQU 29 ; Use langSami langLappish EQU 29 ; Use langSami langSaamisk EQU 29 ; Use langSami langFaeroese EQU 30 ; Use langFaroese langIrish EQU 35 ; Use langIrishGaelic langGalla EQU 87 ; Use langOromo langAfricaans EQU 141 ; Use langAfrikaans ; Region codes: ; These typically specify a combination of a language code and a particular region. ; Some of these numeric values are reserved just for extra resource IDs associated ; with certain regions; these are not actual region codes, and are noted in the comments. ; Not all of the region codes are currently supported by Apple software. ; When relevant, the following list also provides: ; - The Apple part number (P/N) code for software localized for the specified region. ; - The two-letter ISO language and country codes (from ISO 639 and ISO 3166). The ; language code (lowercase) is first, then '_', then the country code (uppercase). ; P/N ISO codes comments verUS EQU 0 ; en_US verFrance EQU 1 ; F fr_FR verBritain EQU 2 ; B en_GB verGermany EQU 3 ; D de_DE verItaly EQU 4 ; T it_IT verNetherlands EQU 5 ; N nl_NL verFlemish EQU 6 ; FN nl_BE Flemish (Dutch) for Belgium verSweden EQU 7 ; S sv_SE verSpain EQU 8 ; E es_ES Spanish for Spain verDenmark EQU 9 ; DK da_DK verPortugal EQU 10 ; PO pt_PT Portuguese for Portugal verFrCanada EQU 11 ; C fr_CA French for Canada verNorway EQU 12 ; H no_NO Bokmål verIsrael EQU 13 ; HB iw_IL Hebrew verJapan EQU 14 ; J ja_JP verAustralia EQU 15 ; X en_AU English for Australia verArabic EQU 16 ; AB ar Arabic for N Africa, Arabian peninsula, Levant verFinland EQU 17 ; K fi_FI verFrSwiss EQU 18 ; SF fr_CH French Swiss verGrSwiss EQU 19 ; SD de_CH German Swiss verGreece EQU 20 ; GR el_GR Monotonic Greek (modern) verIceland EQU 21 ; IS is_IS verMalta EQU 22 ; MA mt_MT verCyprus EQU 23 ; CY _CY Greek or Turkish language? Checking... verTurkey EQU 24 ; TU tr_TR verYugoCroatian EQU 25 ; YU Croatian for Yugoslavia; now use verCroatia (68) verNetherlandsComma EQU 26 ; ID for KCHR resource - Dutch verBelgiumLuxPoint EQU 27 ; ID for KCHR resource - Belgium verCanadaComma EQU 28 ; ID for KCHR resource - Canadian ISO verCanadaPoint EQU 29 ; ID for KCHR resource - Canadian; now unused vervariantPortugal EQU 30 ; ID for resource; now unused vervariantNorway EQU 31 ; ID for resource; now unused vervariantDenmark EQU 32 ; ID for KCHR resource - Danish Mac Plus verIndiaHindi EQU 33 ; hi_IN Hindi for India verPakistanUrdu EQU 34 ; UR ur_PK Urdu for Pakistan verTurkishModified EQU 35 verItalianSwiss EQU 36 ; ST it_CH Italian Swiss verInternational EQU 37 ; Z en English for international use ; 38 is unassigned verRomania EQU 39 ; RO ro_RO verGreecePoly EQU 40 ; Polytonic Greek (classical) verLithuania EQU 41 ; LT lt_LT verPoland EQU 42 ; PL pl_PL verHungary EQU 43 ; MG hu_HU verEstonia EQU 44 ; EE et_EE verLatvia EQU 45 ; LV lv_LV verSami EQU 46 ; se verFaroeIsl EQU 47 ; FA fo_FO verIran EQU 48 ; PS fa_IR Persian/Farsi verRussia EQU 49 ; RS ru_RU Russian verIreland EQU 50 ; GA ga_IE Irish Gaelic for Ireland (without dot above) verKorea EQU 51 ; KH ko_KR verChina EQU 52 ; CH zh_CN Simplified Chinese verTaiwan EQU 53 ; TA zh_TW Traditional Chinese verThailand EQU 54 ; TH th_TH verScriptGeneric EQU 55 ; SS Generic script system (no language or script) verCzech EQU 56 ; CZ cs_CZ verSlovak EQU 57 ; SL sk_SK verFarEastGeneric EQU 58 ; FE Generic Far East system (no language or script) verMagyar EQU 59 ; Unused; see verHungary verBengali EQU 60 ; bn Bangladesh or India verByeloRussian EQU 61 ; BY be_BY verUkraine EQU 62 ; UA uk_UA ; 63 is unassigned verGreeceAlt EQU 64 ; unused verSerbian EQU 65 ; SR sr_YU, sh_YU verSlovenian EQU 66 ; SV sl_SI verMacedonian EQU 67 ; MD mk_MK verCroatia EQU 68 ; CR hr_HR, sh_HR ; 69 is unassigned ; 70 is unassigned verBrazil EQU 71 ; BR pt_BR Portuguese for Brazil verBulgaria EQU 72 ; BG bg_BG verCatalonia EQU 73 ; CA ca_ES Catalan for Spain verMultilingual EQU 74 ; ZM (no language or script) verScottishGaelic EQU 75 ; GD gd verManxGaelic EQU 76 ; GV gv Isle of Man verBreton EQU 77 ; BZ br verNunavut EQU 78 ; IU iu_CA Inuktitut for Canada verWelsh EQU 79 ; CU cy ; 80 is ID for KCHR resource - Canadian CSA verIrishGaelicScript EQU 81 ; GS ga_IE Irish Gaelic for Ireland (using dot above) verEngCanada EQU 82 ; V en_CA English for Canada verBhutan EQU 83 ; BH dz_BT Dzongkha for Bhutan verArmenian EQU 84 ; HY hy_AM verGeorgian EQU 85 ; KR ka_GE verSpLatinAmerica EQU 86 ; LA es Spanish for Latin America ; 87 is ID for KCHR resource - Spanish ISO verTonga EQU 88 ; TS to_TO ; 89 is ID for KCHR resource - Polish Modified ; 90 is ID for KCHR resource - Catalan ISO verFrenchUniversal EQU 91 ; fr French generic verAustria EQU 92 ; AU de_AT German for Austria ; Y 93 is unused alternate for verSpLatinAmerica verGujarati EQU 94 ; gu_IN verPunjabi EQU 95 ; pa Pakistan or India verIndiaUrdu EQU 96 ; ur_IN Urdu for India verVietnam EQU 97 ; vi_VN verFrBelgium EQU 98 ; BF fr_BE French for Belgium verUzbek EQU 99 ; BD uz_UZ verSingapore EQU 100 ; SG verNynorsk EQU 101 ; NY _NO Norwegian Nynorsk verAfrikaans EQU 102 ; AK af_ZA verEsperanto EQU 103 ; eo verMarathi EQU 104 ; mr_IN verTibetan EQU 105 ; bo verNepal EQU 106 ; ne_NP verGreenland EQU 107 ; kl ; Other extra resource IDs assigned in the same number space: ; 179 is ID for KCHR & itl_ resources - Cornish ; 581 is ID for KCHR resource - Irish Gaelic script alternate ; 582 is ID for KCHR resource - Ogham ; 779 is ID for KCHR resource - Welsh alternate ; 1111 is ID for KCHR resource - French numeric ; Obsolete region code names (kept for backward compatibility): ; Misspelled or alternate form, ambiguous, misleading, considered pejorative, archaic, etc. verFrBelgiumLux EQU 6 ; Incorrect; 6 is Flemish, not French, for Belgium; use verFlemish verBelgiumLux EQU 6 ; Use verFlemish verArabia EQU 16 ; Use verArabic verYugoslavia EQU 25 ; Use verYugoCroatian (same number, now unused), or newer verCroatia verIndia EQU 33 ; Use verIndiaHindi verPakistan EQU 34 ; Use verPakistanUrdu verRumania EQU 39 ; Alternate for verRomania verGreekAncient EQU 40 ; Use verGreecePoly verLapland EQU 46 ; Use verSami verFaeroeIsl EQU 47 ; Use verFaroeIsl verGenericFE EQU 58 ; Use verFarEastGeneric verBelarus EQU 61 ; Alternate for verByelorussian verUkrania EQU 62 ; Use verUkraine verAlternateGr EQU 64 ; Use verGreeceAlt verSerbia EQU 65 ; Alternate for verSerbian verSlovenia EQU 66 ; Alternate for verSlovenian verMacedonia EQU 67 ; Alternate for verMacedonian verBrittany EQU 77 ; Alternate for verBreton verWales EQU 79 ; Alternate for verWelsh verArmenia EQU 84 ; Alternate for verArmenian verGeorgia EQU 85 ; Alternate for verGeorgian verAustriaGerman EQU 92 ; Use verAustria verTibet EQU 105 ; Use verTibetan minCountry EQU 0 maxCountry EQU 107 ; Calendar Codes calGregorian EQU 0 calArabicCivil EQU 1 calArabicLunar EQU 2 calJapanese EQU 3 calJewish EQU 4 calCoptic EQU 5 calPersian EQU 6 ; Integer Format Codes intWestern EQU 0 intArabic EQU 1 intRoman EQU 2 intJapanese EQU 3 intEuropean EQU 4 intOutputMask EQU $8000 ; CharByte byte types smSingleByte EQU 0 smFirstByte EQU -1 smLastByte EQU 1 smMiddleByte EQU 2 ; CharType field masks smcTypeMask EQU $000F smcReserved EQU $00F0 smcClassMask EQU $0F00 smcOrientationMask EQU $1000 ;two-byte script glyph orientation smcRightMask EQU $2000 smcUpperMask EQU $4000 smcDoubleMask EQU $8000 ; Basic CharType character types smCharPunct EQU $0000 smCharAscii EQU $0001 smCharEuro EQU $0007 smCharExtAscii EQU $0007 ; More correct synonym for smCharEuro ; Additional CharType character types for script systems smCharKatakana EQU $0002 ;Japanese Katakana smCharHiragana EQU $0003 ;Japanese Hiragana smCharIdeographic EQU $0004 ;Hanzi, Kanji, Hanja smCharTwoByteGreek EQU $0005 ;2-byte Greek in Far East systems smCharTwoByteRussian EQU $0006 ;2-byte Cyrillic in Far East systems smCharBidirect EQU $0008 ;Arabic/Hebrew smCharContextualLR EQU $0009 ;Contextual left-right: Thai, Indic scripts smCharNonContextualLR EQU $000A ;Non-contextual left-right: Cyrillic, Greek smCharHangul EQU $000C ;Korean Hangul smCharJamo EQU $000D ;Korean Jamo smCharBopomofo EQU $000E ;Chinese Bopomofo smCharGanaKana EQU $000F ;Shared for Japanese Hiragana & Katakana ; old names for some of above, for backward compatibility smCharFISKana EQU $0002 ;Katakana smCharFISGana EQU $0003 ;Hiragana smCharFISIdeo EQU $0004 ;Hanzi, Kanji, Hanja smCharFISGreek EQU $0005 ;2-byte Greek in Far East systems smCharFISRussian EQU $0006 ;2-byte Cyrillic in Far East systems ; CharType classes for punctuation (smCharPunct) smPunctNormal EQU $0000 smPunctNumber EQU $0100 smPunctSymbol EQU $0200 smPunctBlank EQU $0300 ; Additional CharType classes for punctuation in two-byte systems smPunctRepeat EQU $0400 ; repeat marker smPunctGraphic EQU $0500 ; line graphics ; CharType Katakana and Hiragana classes for two-byte systems smKanaSmall EQU $0100 ;small kana character smKanaHardOK EQU $0200 ;can have dakuten smKanaSoftOK EQU $0300 ;can have dakuten or han-dakuten ; CharType Ideographic classes for two-byte systems smIdeographicLevel1 EQU $0000 ;level 1 char smIdeographicLevel2 EQU $0100 ;level 2 char smIdeographicUser EQU $0200 ;user char ; old names for above, for backward compatibility smFISClassLvl1 EQU $0000 ;level 1 char smFISClassLvl2 EQU $0100 ;level 2 char smFISClassUser EQU $0200 ;user char ; CharType Jamo classes for Korean systems smJamoJaeum EQU $0000 ;simple consonant char smJamoBogJaeum EQU $0100 ;complex consonant char smJamoMoeum EQU $0200 ;simple vowel char smJamoBogMoeum EQU $0300 ;complex vowel char ; CharType glyph orientation for two-byte systems smCharHorizontal EQU $0000 ; horizontal character form, or for both smCharVertical EQU $1000 ; vertical character form ; CharType directions smCharLeft EQU $0000 smCharRight EQU $2000 ; CharType case modifers smCharLower EQU $0000 smCharUpper EQU $4000 ; CharType character size modifiers (1 or multiple bytes). smChar1byte EQU $0000 smChar2byte EQU $8000 ; TransliterateText target types for Roman smTransAscii EQU 0 ;convert to ASCII smTransNative EQU 1 ;convert to font script smTransCase EQU $FE ;convert case for all text smTransSystem EQU $FF ;convert to system script ; TransliterateText target types for two-byte scripts smTransAscii1 EQU 2 ;1-byte Roman smTransAscii2 EQU 3 ;2-byte Roman smTransKana1 EQU 4 ;1-byte Japanese Katakana smTransKana2 EQU 5 ;2-byte Japanese Katakana smTransGana2 EQU 7 ;2-byte Japanese Hiragana (no 1-byte Hiragana) smTransHangul2 EQU 8 ;2-byte Korean Hangul smTransJamo2 EQU 9 ;2-byte Korean Jamo smTransBopomofo2 EQU 10 ;2-byte Chinese Bopomofo ; TransliterateText target modifiers smTransLower EQU $4000 ;target becomes lowercase smTransUpper EQU $8000 ;target becomes uppercase ; TransliterateText resource format numbers smTransRuleBaseFormat EQU 1 ;Rule based trsl resource format smTransHangulFormat EQU 2 ;Table based Hangul trsl resource format ; TransliterateText property flags smTransPreDoubleByting EQU 1 ;Convert all text to double byte before transliteration smTransPreLowerCasing EQU 2 ;Convert all text to lower case before transliteration ; TransliterateText source mask - general smMaskAll EQU $FFFFFFFF ;Convert all text ; TransliterateText source masks smMaskAscii EQU $00000001 ;2^smTransAscii smMaskNative EQU $00000002 ;2^smTransNative ; TransliterateText source masks for two-byte scripts smMaskAscii1 EQU $00000004 ;2^smTransAscii1 smMaskAscii2 EQU $00000008 ;2^smTransAscii2 smMaskKana1 EQU $00000010 ;2^smTransKana1 smMaskKana2 EQU $00000020 ;2^smTransKana2 smMaskGana2 EQU $00000080 ;2^smTransGana2 smMaskHangul2 EQU $00000100 ;2^smTransHangul2 smMaskJamo2 EQU $00000200 ;2^smTransJamo2 smMaskBopomofo2 EQU $00000400 ;2^smTransBopomofo2 ; Result values from GetScriptManagerVariable and SetScriptManagerVariable calls. smNotInstalled EQU 0 ;routine not available in script smBadVerb EQU -1 ;Bad verb passed to a routine smBadScript EQU -2 ;Bad script code passed to a routine ; Values for script redraw flag. smRedrawChar EQU 0 ;Redraw character only smRedrawWord EQU 1 ;Redraw entire word (2-byte systems) smRedrawLine EQU -1 ;Redraw entire line (bidirectional systems) ; GetScriptManagerVariable and SetScriptManagerVariable verbs smVersion EQU 0 ;Script Manager version number smMunged EQU 2 ;Globals change count smEnabled EQU 4 ;Count of enabled scripts, incl Roman smBidirect EQU 6 ;At least one bidirectional script smFontForce EQU 8 ;Force font flag smIntlForce EQU 10 ;Force intl flag smForced EQU 12 ;Script was forced to system script smDefault EQU 14 ;Script was defaulted to Roman script smPrint EQU 16 ;Printer action routine smSysScript EQU 18 ;System script smLastScript EQU 20 ;Last keyboard script smKeyScript EQU 22 ;Keyboard script smSysRef EQU 24 ;System folder refNum smKeyCache EQU 26 ;obsolete smKeySwap EQU 28 ;Swapping table handle smGenFlags EQU 30 ;General flags long smOverride EQU 32 ;Script override flags smCharPortion EQU 34 ;Ch vs SpExtra proportion ; New for System 7.0: smDoubleByte EQU 36 ;Flag for double-byte script installed smKCHRCache EQU 38 ;Returns pointer to KCHR cache smRegionCode EQU 40 ;Returns current region code (verXxx) smKeyDisableState EQU 42 ;Returns current keyboard disable state ; GetScriptVariable and SetScriptVariable verbs. ; Note: Verbs private to script systems are negative, while ; those general across script systems are non-negative. smScriptVersion EQU 0 ;Script software version smScriptMunged EQU 2 ;Script entry changed count smScriptEnabled EQU 4 ;Script enabled flag smScriptRight EQU 6 ;Right to left flag smScriptJust EQU 8 ;Justification flag smScriptRedraw EQU 10 ;Word redraw flag smScriptSysFond EQU 12 ;Preferred system font smScriptAppFond EQU 14 ;Preferred Application font smScriptBundle EQU 16 ;Beginning of itlb verbs smScriptNumber EQU 16 ;Script itl0 id smScriptDate EQU 18 ;Script itl1 id smScriptSort EQU 20 ;Script itl2 id smScriptFlags EQU 22 ;flags word smScriptToken EQU 24 ;Script itl4 id smScriptEncoding EQU 26 ;id of optional itl5, if present smScriptLang EQU 28 ;Current language for script smScriptNumDate EQU 30 ;Script Number/Date formats. smScriptKeys EQU 32 ;Script KCHR id smScriptIcon EQU 34 ;ID # of SICN or kcs#/kcs4/kcs8 suite smScriptPrint EQU 36 ;Script printer action routine smScriptTrap EQU 38 ;Trap entry pointer smScriptCreator EQU 40 ;Script file creator smScriptFile EQU 42 ;Script file name smScriptName EQU 44 ;Script name ; There is a hole here for old Kanji private verbs 46-76 ; New for System 7.0: smScriptMonoFondSize EQU 78 ;default monospace FOND (hi) & size (lo) smScriptPrefFondSize EQU 80 ;preferred FOND (hi) & size (lo) smScriptSmallFondSize EQU 82 ;default small FOND (hi) & size (lo) smScriptSysFondSize EQU 84 ;default system FOND (hi) & size (lo) smScriptAppFondSize EQU 86 ;default app FOND (hi) & size (lo) smScriptHelpFondSize EQU 88 ;default Help Mgr FOND (hi) & size (lo) smScriptValidStyles EQU 90 ;mask of valid styles for script smScriptAliasStyle EQU 92 ;style (set) to use for aliases ; special negative verbs for Get/SetScriptVariable that were associated with WorldScriptI ; move them here to be public ; WorldScript private verbs smLayoutCache EQU -309 ; HiWrd(param) is # entries, LoWrd is max input length smOldVerbSupport EQU -311 ; param is added to old verbs to map to WSI verb smSetKashidas EQU -291 ; param is ON or OFF, old verb = -36 smSetKashProp EQU -287 ; param is kashida proportion, old verb = -32 smScriptSysBase EQU -281 ; param is associated font to use w/ system font (old verb = -26) smScriptAppBase EQU -283 ; param is associated font to use w/ app font (old verb = -28) smScriptFntBase EQU -285 ; param is associated font to use w/ all other fonts (old verb = -30) smScriptLigatures EQU -263 ; old verb = -8 smScriptNumbers EQU -267 ; old verb = -12 ; Special script code values for International Utilities iuSystemScript EQU -1 ; <obsolete> system script iuCurrentScript EQU -2 ; <obsolete> current script (for font of grafPort) ; Negative verbs for KeyScript smKeyNextScript EQU -1 ; Switch to next available script smKeySysScript EQU -2 ; Switch to the system script smKeySwapScript EQU -3 ; Switch to previously-used script ; New for System 7.0: smKeyNextKybd EQU -4 ; Switch to next keyboard in current keyscript smKeySwapKybd EQU -5 ; Switch to previously-used keyboard in current keyscript smKeyDisableKybds EQU -6 ; Disable keyboards not in system or Roman script smKeyEnableKybds EQU -7 ; Re-enable keyboards for all enabled scripts smKeyToggleInline EQU -8 ; Toggle inline input for current keyscript smKeyToggleDirection EQU -9 ; Toggle default line direction (TESysJust) smKeyNextInputMethod EQU -10 ; Switch to next input method in current keyscript smKeySwapInputMethod EQU -11 ; Switch to last-used input method in current keyscript smKeyDisableKybdSwitch EQU -12 ; Disable switching from the current keyboard smKeySetDirLeftRight EQU -15 ; Set default line dir to left-right, align left smKeySetDirRightLeft EQU -16 ; Set default line dir to right-left, align right smKeyRoman EQU -17 ; Set keyscript to Roman. Does nothing if Roman-only system, unlike KeyScript(smRoman) which forces an update to current default Roman keyboard ; Optional font and keyboard script synchronization ; One more flag in the smGenFlags long. smfDisableKeyScriptSync EQU 27 ;Disable font and keyboard script synchronization ; We should define masks, too. smfDisableKeyScriptSyncMask EQU $08000000 ;Disable font and keyboard script synchronization mask ; Force keyboard script switching flag and mask for zero and positive KeyScript verbs smKeyForceKeyScriptBit EQU 7 ; Force keyboard script switching flag smKeyForceKeyScriptMask EQU $80 ; its mask ; Bits in the smScriptFlags word ; (bits above 8 are non-static) smsfIntellCP EQU 0 ;Script has intelligent cut & paste smsfSingByte EQU 1 ;Script has only single bytes smsfNatCase EQU 2 ;Native chars have upper & lower case smsfContext EQU 3 ;Script is contextual smsfNoForceFont EQU 4 ;Script will not force characters smsfB0Digits EQU 5 ;Script has alternate digits at B0-B9 smsfAutoInit EQU 6 ;Auto initialize the script smsfUnivExt EQU 7 ;Script is handled by universal extension smsfSynchUnstyledTE EQU 8 ;Script synchronizes for unstyled TE smsfForms EQU 13 ;Uses contextual forms for letters smsfLigatures EQU 14 ;Uses contextual ligatures smsfReverse EQU 15 ;Reverses native text, right-left ; Bits in the smGenFlags long. ; First (high-order) byte is set from itlc flags byte. smfShowIcon EQU 31 ;Show icon even if only one script smfDualCaret EQU 30 ;Use dual caret for mixed direction text smfNameTagEnab EQU 29 ;Reserved for internal use smfUseAssocFontInfo EQU 28 ;Use the associated font info for FontMetrics calls <48> ; Roman script constants ; The following are here for backward compatibility, but should not be used. ; This information should be obtained using GetScript. romanSysFond EQU $3FFF ;system font id number romanAppFond EQU 3 ;application font id number romanFlags EQU $0007 ;roman settings ; Script Manager font equates. smFondStart EQU $4000 ;start from 16K smFondEnd EQU $C000 ;past end of range at 48K ; Miscellaneous font equates. smUprHalfCharSet EQU $80 ;first char code in top half of std char set ; Character Set Extensions diaeresisUprY EQU $D9 fraction EQU $DA intlCurrency EQU $DB leftSingGuillemet EQU $DC rightSingGuillemet EQU $DD fiLigature EQU $DE flLigature EQU $DF dblDagger EQU $E0 centeredDot EQU $E1 baseSingQuote EQU $E2 baseDblQuote EQU $E3 perThousand EQU $E4 circumflexUprA EQU $E5 circumflexUprE EQU $E6 acuteUprA EQU $E7 diaeresisUprE EQU $E8 graveUprE EQU $E9 acuteUprI EQU $EA circumflexUprI EQU $EB diaeresisUprI EQU $EC graveUprI EQU $ED acuteUprO EQU $EE circumflexUprO EQU $EF appleLogo EQU $F0 graveUprO EQU $F1 acuteUprU EQU $F2 circumflexUprU EQU $F3 graveUprU EQU $F4 dotlessLwrI EQU $F5 circumflex EQU $F6 tilde EQU $F7 macron EQU $F8 breveMark EQU $F9 overDot EQU $FA ringMark EQU $FB cedilla EQU $FC doubleAcute EQU $FD ogonek EQU $FE hachek EQU $FF ; ScriptTokenType values tokenIntl EQU 4 ;the itl resource number of the tokenizer tokenEmpty EQU -1 ;used internally as an empty flag tokenUnknown EQU 0 ;chars that do not match a defined token type tokenWhite EQU 1 ;white space tokenLeftLit EQU 2 ;literal begin tokenRightLit EQU 3 ;literal end tokenAlpha EQU 4 ;alphabetic tokenNumeric EQU 5 ;numeric tokenNewLine EQU 6 ;new line tokenLeftComment EQU 7 ;open comment tokenRightComment EQU 8 ;close comment tokenLiteral EQU 9 ;literal tokenEscape EQU 10 ;character escape (e.g. '\' in "\n", "\t") tokenAltNum EQU 11 ;alternate number (e.g. $B0-B9 in Arabic,Hebrew) tokenRealNum EQU 12 ;real number tokenAltReal EQU 13 ;alternate real number tokenReserve1 EQU 14 ;reserved tokenReserve2 EQU 15 ;reserved tokenLeftParen EQU 16 ;open parenthesis tokenRightParen EQU 17 ;close parenthesis tokenLeftBracket EQU 18 ;open square bracket tokenRightBracket EQU 19 ;close square bracket tokenLeftCurly EQU 20 ;open curly bracket tokenRightCurly EQU 21 ;close curly bracket tokenLeftEnclose EQU 22 ;open guillemet tokenRightEnclose EQU 23 ;close guillemet tokenPlus EQU 24 tokenMinus EQU 25 tokenAsterisk EQU 26 ;times/multiply tokenDivide EQU 27 tokenPlusMinus EQU 28 ;plus or minus symbol tokenSlash EQU 29 tokenBackSlash EQU 30 tokenLess EQU 31 ;less than symbol tokenGreat EQU 32 ;greater than symbol tokenEqual EQU 33 tokenLessEqual2 EQU 34 ;less than or equal, 2 characters (e.g. <=) tokenLessEqual1 EQU 35 ;less than or equal, 1 character tokenGreatEqual2 EQU 36 ;greater than or equal, 2 characters (e.g. >=) tokenGreatEqual1 EQU 37 ;greater than or equal, 1 character token2Equal EQU 38 ;double equal (e.g. ==) tokenColonEqual EQU 39 ;colon equal tokenNotEqual EQU 40 ;not equal, 1 character tokenLessGreat EQU 41 ;less/greater, Pascal not equal (e.g. <>) tokenExclamEqual EQU 42 ;exclamation equal, C not equal (e.g. !=) tokenExclam EQU 43 ;exclamation point tokenTilde EQU 44 ;centered tilde tokenComma EQU 45 tokenPeriod EQU 46 tokenLeft2Quote EQU 47 ;open double quote tokenRight2Quote EQU 48 ;close double quote tokenLeft1Quote EQU 49 ;open single quote tokenRight1Quote EQU 50 ;close single quote token2Quote EQU 51 ;double quote token1Quote EQU 52 ;single quote tokenSemicolon EQU 53 tokenPercent EQU 54 tokenCaret EQU 55 tokenUnderline EQU 56 tokenAmpersand EQU 57 tokenAtSign EQU 58 tokenBar EQU 59 ;vertical bar tokenQuestion EQU 60 tokenPi EQU 61 ;lower-case pi tokenRoot EQU 62 ;square root symbol tokenSigma EQU 63 ;capital sigma tokenIntegral EQU 64 ;integral sign tokenMicro EQU 65 tokenCapPi EQU 66 ;capital pi tokenInfinity EQU 67 tokenColon EQU 68 tokenHash EQU 69 ;e.g. # tokenDollar EQU 70 tokenNoBreakSpace EQU 71 ;non-breaking space tokenFraction EQU 72 tokenIntlCurrency EQU 73 tokenLeftSingGuillemet EQU 74 tokenRightSingGuillemet EQU 75 tokenPerThousand EQU 76 tokenEllipsis EQU 77 tokenCenterDot EQU 78 tokenNil EQU 127 delimPad EQU -2 ; obsolete, misspelled token names kept for backward compatibility tokenTilda EQU 44 tokenCarat EQU 55 ; Table selectors for GetItlTable smWordSelectTable EQU 0 ; get word select break table from 'itl2' smWordWrapTable EQU 1 ; get word wrap break table from 'itl2' smNumberPartsTable EQU 2 ; get default number parts table from 'itl4' smUnTokenTable EQU 3 ; get unToken table from 'itl4' smWhiteSpaceList EQU 4 ; get white space list from 'itl4' iuWordSelectTable EQU 0 ; <obsolete> get word select break table from 'itl2' iuWordWrapTable EQU 1 ; <obsolete> get word wrap break table from 'itl2' iuNumberPartsTable EQU 2 ; <obsolete> get default number parts table from 'itl4' iuUnTokenTable EQU 3 ; <obsolete> get unToken table from 'itl4' iuWhiteSpaceList EQU 4 ; <obsolete> get white space list from 'itl4' ; end of stuff moved from Packages.h tokenOK EQU 0 ; TokenResults tokenOverflow EQU 1 ; TokenResults stringOverflow EQU 2 ; TokenResults badDelim EQU 3 ; TokenResults badEnding EQU 4 ; TokenResults crash EQU 5 ; TokenResults ; typedef SInt8 TokenResults CharByteTable RECORD 0 elements ds.b 256 sizeof EQU * ; size: $100 (256) ENDR ; "TokenType" was renamed to "ScriptTokenType" because of a name collision in QuickTime 3.0 on other OS's ; typedef short ScriptTokenType IF TARGET_OS_MAC THEN ; typedef ScriptTokenType TokenType ENDIF ; TARGET_OS_MAC DelimType RECORD 0 elements ds.w 2 sizeof EQU * ; size: $4 (4) ENDR CommentType RECORD 0 elements ds.w 4 sizeof EQU * ; size: $8 (8) ENDR TokenRec RECORD 0 theToken ds.w 1 ; offset: $0 (0) position ds.l 1 ; offset: $2 (2) ; pointer into original source length ds.l 1 ; offset: $6 (6) ; length of text in original source stringPosition ds.l 1 ; offset: $A (10) ; Pascal/C string copy of identifier sizeof EQU * ; size: $E (14) ENDR ; typedef struct TokenRec * TokenRecPtr TokenBlock RECORD 0 source ds.l 1 ; offset: $0 (0) ; pointer to stream of characters sourceLength ds.l 1 ; offset: $4 (4) ; length of source stream tokenList ds.l 1 ; offset: $8 (8) ; pointer to array of tokens tokenLength ds.l 1 ; offset: $C (12) ; maximum length of TokenList tokenCount ds.l 1 ; offset: $10 (16) ; number tokens generated by tokenizer stringList ds.l 1 ; offset: $14 (20) ; pointer to stream of identifiers stringLength ds.l 1 ; offset: $18 (24) ; length of string list stringCount ds.l 1 ; offset: $1C (28) ; number of bytes currently used doString ds.b 1 ; offset: $20 (32) ; make strings & put into StringList doAppend ds.b 1 ; offset: $21 (33) ; append to TokenList rather than replace doAlphanumeric ds.b 1 ; offset: $22 (34) ; identifiers may include numeric doNest ds.b 1 ; offset: $23 (35) ; do comments nest? leftDelims ds.w 2 ; offset: $24 (36) rightDelims ds.w 2 ; offset: $28 (40) leftComment ds.w 4 ; offset: $2C (44) rightComment ds.w 4 ; offset: $34 (52) escapeCode ds.w 1 ; offset: $3C (60) ; escape symbol code decimalCode ds.w 1 ; offset: $3E (62) itlResource ds.l 1 ; offset: $40 (64) ; handle to itl4 resource of current script reserved ds.l 8 ; offset: $44 (68) ; must be zero! sizeof EQU * ; size: $64 (100) ENDR ; typedef struct TokenBlock * TokenBlockPtr ; ; pascal short GetSysDirection(void) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _GetSysDirection &dest=(sp) move.w $0BAC,&dest EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION GetSysDirection ENDIF ; ; pascal void SetSysDirection(short value) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _SetSysDirection &src=(sp)+ move.w &src,$0BAC EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION SetSysDirection ENDIF ; ; pascal short FontScript(void ) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _FontScript move.l #$82000000,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION FontScript ENDIF ; ; pascal short IntlScript(void ) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _IntlScript move.l #$82000002,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION IntlScript ENDIF ; ; pascal void KeyScript(short code) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _KeyScript move.l #$80020004,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION KeyScript ENDIF ; ; pascal Boolean IsCmdChar(const EventRecord *event, short test) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _IsCmdChar move.l #$8206FFD0,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION IsCmdChar ENDIF ; ; pascal short FontToScript(short fontNumber) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _FontToScript move.l #$82020006,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION FontToScript ENDIF ; ; pascal long GetScriptManagerVariable(short selector) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _GetScriptManagerVariable move.l #$84020008,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION GetScriptManagerVariable ENDIF ; ; pascal OSErr SetScriptManagerVariable(short selector, long param) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _SetScriptManagerVariable move.l #$8206000A,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION SetScriptManagerVariable ENDIF ; ; pascal long GetScriptVariable(short script, short selector) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _GetScriptVariable move.l #$8404000C,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION GetScriptVariable ENDIF ; ; pascal OSErr SetScriptVariable(short script, short selector, long param) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _SetScriptVariable move.l #$8208000E,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION SetScriptVariable ENDIF ; ; pascal short CharacterByteType(Ptr textBuf, short textOffset, ScriptCode script) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _CharacterByteType move.l #$C2060010,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION CharacterByteType ENDIF ; ; pascal short CharacterType(Ptr textBuf, short textOffset, ScriptCode script) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _CharacterType move.l #$C2060012,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION CharacterType ENDIF ; ; pascal OSErr TransliterateText(Handle srcHandle, Handle dstHandle, short target, long srcMask, ScriptCode script) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _TransliterateText move.l #$C20E0018,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION TransliterateText ENDIF ; ; pascal Boolean FillParseTable(CharByteTable table, ScriptCode script) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _FillParseTable move.l #$C2040022,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION FillParseTable ENDIF ; ; pascal Handle GetIntlResource(short theID) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _GetIntlResource move.w #$0006,-(sp) dc.w $A9ED EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION GetIntlResource ENDIF ; ; pascal void ClearIntlResourceCache(void ) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _ClearIntlResourceCache move.w #$0018,-(sp) dc.w $A9ED EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION ClearIntlResourceCache ENDIF ; ; pascal void GetIntlResourceTable(ScriptCode script, short tableCode, Handle *itlHandle, long *offset, long *length) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _GetIntlResourceTable move.w #$0024,-(sp) dc.w $A9ED EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION GetIntlResourceTable ENDIF ; ; pascal UniversalProcPtr GetScriptUtilityAddress(short selector, Boolean Before, ScriptCode script) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _GetScriptUtilityAddress move.l #$C4040038,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION GetScriptUtilityAddress ENDIF ; ; pascal void SetScriptUtilityAddress(short selector, Boolean Before, UniversalProcPtr routineAddr, ScriptCode script) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _SetScriptUtilityAddress move.l #$C008003A,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION SetScriptUtilityAddress ENDIF ; ; pascal UniversalProcPtr GetScriptQDPatchAddress(short trapNum, Boolean Before, Boolean forPrinting, ScriptCode script) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _GetScriptQDPatchAddress move.l #$C406003C,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION GetScriptQDPatchAddress ENDIF ; ; pascal void SetScriptQDPatchAddress(short trapNum, Boolean Before, Boolean forPrinting, UniversalProcPtr routineAddr, ScriptCode script) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _SetScriptQDPatchAddress move.l #$C00A003E,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION SetScriptQDPatchAddress ENDIF ; ; pascal void SetIntlResource(short refNum, short theID, Handle intlHandle) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _SetIntlResource move.w #$0008,-(sp) dc.w $A9ED EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION SetIntlResource ENDIF ; ; pascal short CharByte(Ptr textBuf, short textOffset) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _CharByte move.l #$82060010,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION CharByte ENDIF ; ; pascal short CharType(Ptr textBuf, short textOffset) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _CharType move.l #$82060012,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION CharType ENDIF ; ; pascal OSErr Transliterate(Handle srcHandle, Handle dstHandle, short target, long srcMask) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _Transliterate move.l #$820E0018,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION Transliterate ENDIF ; ; pascal Boolean ParseTable(CharByteTable table) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _ParseTable move.l #$82040022,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION ParseTable ENDIF ; ; pascal TokenResults IntlTokenize(TokenBlockPtr tokenParam) ; IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN Macro _IntlTokenize move.l #$8204FFFA,-(sp) dc.w $A8B5 EndM ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN IMPORT_CFM_FUNCTION IntlTokenize ENDIF IF OLDROUTINENAMES THEN ENDIF ; OLDROUTINENAMES ENDIF ; __SCRIPT__